package com.sale.system.service;

import com.sale.common.mybatis.core.page.PageQuery;
import com.sale.common.mybatis.core.page.TableDataInfo;
import com.sale.system.domain.dto.MaterialHalfDto;
import com.sale.system.domain.vo.MaterialHalfVo;

/**
 * @Description
 * @Param
 * @Date
 * @Author hl
 **/
public interface IMaterialHalfService {

    /**
     * 获取半成品配置
     */
    TableDataInfo<MaterialHalfDto> selectHalfList(MaterialHalfVo materialHalfVo, PageQuery pageQuery);

    /**
     * 新增半成品
     */
    int insertMaterialHalf(MaterialHalfVo materialHalfVo) throws Exception;

    /**
     * 删除半成品
     */
    int deleteMaterialHalf(String materialId) throws Exception;

    /**
     * 查询单个半成品
     */
    MaterialHalfDto selectMaterialHalfById(long materialId);

    /**
     * 修改半成品
     */
    int updateMaterialHalfEdit(MaterialHalfVo materialHalfVo) throws Exception;


    /**
     * 半成品冻结
     */
    int updateEditFreeze(Long materialId);

    /**
     * 半成品解结
     */
    int updateEditThaw(Long materialId);
}
